<table class="configuration table table-bordered">
    <thead>
        <tr>
            <th class="text-left" style="width: 20%">Key</th>
            <th class="text-left" style="width: 15%">Default</th>
            <th class="text-left" style="width: 10%">Type</th>
            <th class="text-left" style="width: 55%">Description</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td><h5>pulsar.producer.batchingEnabled</h5></td>
            <td style="word-wrap: break-word;">true</td>
            <td>Boolean</td>
            <td>Enable batch send ability, it was enabled by default.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.batchingMaxBytes</h5></td>
            <td style="word-wrap: break-word;">131072</td>
            <td>Integer</td>
            <td>The maximum size of messages permitted in a batch. Keep the maximum consistent as previous versions.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.batchingMaxMessages</h5></td>
            <td style="word-wrap: break-word;">1000</td>
            <td>Integer</td>
            <td>The maximum number of messages permitted in a batch.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.batchingMaxPublishDelayMicros</h5></td>
            <td style="word-wrap: break-word;">1000</td>
            <td>Long</td>
            <td>Batching time period of sending messages.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.batchingPartitionSwitchFrequencyByPublishDelay</h5></td>
            <td style="word-wrap: break-word;">10</td>
            <td>Integer</td>
            <td>The maximum wait time for switching topic partitions.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.chunkMaxMessageSize</h5></td>
            <td style="word-wrap: break-word;">-1</td>
            <td>Integer</td>
            <td>Max chunk message size in bytes. Producer chunks the message if chunking is enabled and message size is larger than max chunk-message size. By default, chunkMaxMessageSize value is -1 and producer chunks based on max-message size configured at the broker.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.chunkingEnabled</h5></td>
            <td style="word-wrap: break-word;">false</td>
            <td>Boolean</td>
            <td>If message size is higher than allowed max publish-payload size by broker, then enableChunking helps producer to split message into multiple chunks and publish them to broker separately and in order. So, it allows client to successfully publish large size of messages in pulsar.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.compressionType</h5></td>
            <td style="word-wrap: break-word;">NONE</td>
            <td><p>Enum</p></td>
            <td>Message data compression type used by a producer.Available options:<ul><li><a href="https://github.com/lz4/lz4">LZ4</a></li><li><a href="https://zlib.net/">ZLIB</a></li><li><a href="https://facebook.github.io/zstd/">ZSTD</a></li><li><a href="https://google.github.io/snappy/">SNAPPY</a></li></ul><br /><br />Possible values:<ul><li>"NONE"</li><li>"LZ4"</li><li>"ZLIB"</li><li>"ZSTD"</li><li>"SNAPPY"</li></ul></td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.initialSequenceId</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>Long</td>
            <td>The sequence id for avoiding the duplication, it's used when Pulsar doesn't have transaction.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.producerCryptoFailureAction</h5></td>
            <td style="word-wrap: break-word;">FAIL</td>
            <td><p>Enum</p></td>
            <td>The action the producer will take in case of encryption failures.<br /><br />Possible values:<ul><li>"FAIL"</li><li>"SEND"</li></ul></td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.producerName</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>String</td>
            <td>A producer name which would be displayed in the Pulsar's dashboard. If no producer name was provided, we would use a Pulsar generated name instead.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.properties</h5></td>
            <td style="word-wrap: break-word;"></td>
            <td>Map</td>
            <td>A name or value property of this consumer. <code class="highlighter-rouge">properties</code> is application defined metadata attached to a consumer. When getting a topic stats, associate this metadata with the consumer stats for easier identification.</td>
        </tr>
        <tr>
            <td><h5>pulsar.producer.sendTimeoutMs</h5></td>
            <td style="word-wrap: break-word;">30000</td>
            <td>Long</td>
            <td>Message send timeout in ms.If a message is not acknowledged by a server before the <code class="highlighter-rouge">sendTimeout</code> expires, an error occurs.</td>
        </tr>
    </tbody>
</table>
